package cn.itcast.controller;

import cn.itcast.domain.company.Company;
import cn.itcast.service.company.CompanyService;
import com.alibaba.dubbo.config.annotation.Reference;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
public class ApplyController {

	/**
	 * 声明调用远程的dubbo服务器
	 *  loadbalance : 负载均衡
	 *    配置算法  roundrobin：轮训（依次调用）
	 */
	@Reference(loadbalance = "roundrobin")
	private CompanyService companyService;

	/**
	 * 企业申请：
	 *  本质：将页面上传递的企业数据信息，调用service保存到数据中
	 *  参数：company对象
	 *  业务：
	 *      调用service保存
	 *  返回值：
	 *      “1”：申请成功
	 *      “其他”：申请失败
	 *  为了代码书写简单，返回值是json字符
	 */
	@RequestMapping("/apply")
	public @ResponseBody String apply(Company company) {
		try {
			companyService.save(company);
			return "1";
		}catch (Exception e) {
			e.printStackTrace();
			return "0";
		}
	}
}
